package drds.binlog.protocol.entry_protocol_proto;


import com.google.protobuf.ByteString;
import com.google.protobuf.MessageOrBuilder;

public interface TransactionBeginOrBuilder extends MessageOrBuilder
{

    /**
     * <pre>
     * *已废弃，请使用header里的executeTime*
     * </pre>
     * <p>
     * <code>int64 executeTime = 1;</code>
     */
    long getExecuteTime();

    /**
     * <pre>
     * *已废弃，Begin里不提供事务id*
     * </pre>
     * <p>
     * <code>string transactionId = 2;</code>
     */
    String getTransactionId();

    /**
     * <pre>
     * *已废弃，Begin里不提供事务id*
     * </pre>
     * <p>
     * <code>string transactionId = 2;</code>
     */
    ByteString getTransactionIdBytes();

    /**
     * <pre>
     * *预留扩展*
     * </pre>
     * <p>
     * <code>repeated .com.alibaba.otter.canal.protocol.Pair props = 3;</code>
     */
    java.util.List<Pair>
    getPropsList();

    /**
     * <pre>
     * *预留扩展*
     * </pre>
     * <p>
     * <code>repeated .com.alibaba.otter.canal.protocol.Pair props = 3;</code>
     */
    Pair getProps(int index);

    /**
     * <pre>
     * *预留扩展*
     * </pre>
     * <p>
     * <code>repeated .com.alibaba.otter.canal.protocol.Pair props = 3;</code>
     */
    int getPropsCount();

    /**
     * <pre>
     * *预留扩展*
     * </pre>
     * <p>
     * <code>repeated .com.alibaba.otter.canal.protocol.Pair props = 3;</code>
     */
    java.util.List<? extends PairOrBuilder>
    getPropsOrBuilderList();

    /**
     * <pre>
     * *预留扩展*
     * </pre>
     * <p>
     * <code>repeated .com.alibaba.otter.canal.protocol.Pair props = 3;</code>
     */
    PairOrBuilder getPropsOrBuilder(
            int index);

    /**
     * <pre>
     * *执行的thread Id*
     * </pre>
     * <p>
     * <code>int64 threadId = 4;</code>
     */
    long getThreadId();
}
